package com.jingdianjichi.redis.init;

import org.springframework.stereotype.Component;

/**
 * 抽象缓存类，定义了缓存的初始化、获取、清除和重新加载方法
 */
@Component
public abstract class AbstractCache {

    /**
     * 初始化缓存
     */
    public void initCache() {}

    /**
     * 根据键获取缓存
     * @param key 键
     * @return 缓存对象
     */
    public <T> T getCache(String key) {
        return null;
    }

    /**
     * 清除缓存
     */
    public void clearCache() {}

    /**
     * 重新加载缓存
     */
    public void reloadCache() {
        // 先清除缓存
        clearCache();
        // 然后重新初始化缓存
        initCache();
    }
}
